package com.zmc.lostfound.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zmc.lostfound.common.utils.PageParams;
import com.zmc.lostfound.common.utils.PageResult;
import com.zmc.lostfound.common.utils.Result;
import com.zmc.lostfound.system.entity.FunctionEntity;
import com.zmc.lostfound.system.vo.FunctionSaveVO;

import java.util.List;

/**
 * @author LJQ
 * @description 系统功能信息管理业务接口
 * @email 2869581855@qq.com
 * @date 2023-07-05 15:36:50
 */
public interface FunctionService extends IService<FunctionEntity> {

    /**
     * 分页模糊查询系统功能信息
     *
     * @param pageParams 分页参数
     * @return PageResult
     */
    PageResult queryPage(PageParams pageParams);

    /**
     * 查询全部系统功能信息
     *
     * @return List<FunctionEntity>
     */
    List<FunctionEntity> findAll();

    /**
     * 按id查询系统功能信息
     *
     * @param id 系统功能id
     * @return FunctionEntity
     */
    FunctionEntity queryInfoById(Long id);

    /**
     * 新增系统功能信息
     *
     * @param functionSaveVO 系统功能信息新增/修改请求体
     * @return Result
     */
    Result insertFunction(FunctionSaveVO functionSaveVO);

    /**
     * 修改系统功能信息
     *
     * @param functionSaveVO 系统功能信息新增/修改请求体
     * @return Result
     */
    Result updateFunction(FunctionSaveVO functionSaveVO);

    /**
     * 按系统功能id删除系统功能信息
     *
     * @param functionId 系统功能id
     * @return Result
     */
    Result deleteByFunctionId(Long functionId);

}

